This repository was archived by the owner on Feb 5, 2025. It is now read-only.
Use CocoaPods CDN specs repo to reduce CI runtime from ~12 minutes to ~3 minutes #147
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We're coming closer to hitting our CircleCI limit each month so I'm making a few small changes to improve usage and hopefully improve the development cycle as well.
In 1.7.0, CocoaPods introduced a CDN specs repo which could be used to replace the huge, slow git-based specs repo. In 1.8.0 CocoaPods started using this by default, so we will need to switch at some stage. I'm starting on this repo as it hopefully is small and manageable.
The only disadvantage of using the CDN specs repo for us is that there is a delay of about 4 minutes from when
pod trunk pushcompletes and a pod is available in the CDN specs repo. For WordPressAuthenticator, this means if you try to use a new version of WordPressShared within 4 minutes of it being published,pod installwon't find it. You can see deploys to the CocoaPods Specs CDN here. Given this speeds things up by much more than 4 minutes, I feel that this tradeoff is worthwhile.So here are the changes I made to implement this:
sourcein thePodfileto use CDN specs.cocoapods-repo-updatesince we never need to runpod repo updatewith the CDN specs.I have also tested the
Publish to TrunkCircleCI job here. Run time for that is reduced from ~13 minutes to ~3.5 minutes.To Test
bundle install && bundle exec pod install. Confirm it completes and there are no changes toPodfile.lock.